# Master makefile for Thinking in C++, 2nd Ed. by Bruce Eckel
# at http://www.BruceEckel.com
# Compiles all the code in the book
# Copyright notice in Copyright.txt

help: 
	@echo To compile all programs from 
	@echo Thinking in C++, 2nd Ed., type
	@echo one of the following commands,
	@echo according to your compiler:
	@echo make Borland
	@echo make Microsoft
	@echo make all
	@echo make egcs

Borland:
	cd C02
	make -f Borland.makefile
	cd ..
	cd C03
	make -f Borland.makefile
	cd ..
	cd C04
	make -f Borland.makefile
	cd ..
	cd C05
	make -f Borland.makefile
	cd ..
	cd C06
	make -f Borland.makefile
	cd ..
	cd C07
	make -f Borland.makefile
	cd ..
	cd C08
	make -f Borland.makefile
	cd ..
	cd C09
	make -f Borland.makefile
	cd ..
	cd C10
	make -f Borland.makefile
	cd ..
	cd C11
	make -f Borland.makefile
	cd ..
	cd C12
	make -f Borland.makefile
	cd ..
	cd C13
	make -f Borland.makefile
	cd ..
	cd C14
	make -f Borland.makefile
	cd ..
	cd C15
	make -f Borland.makefile
	cd ..
	cd C16
	make -f Borland.makefile
	cd ..
	cd C17
	make -f Borland.makefile
	cd ..
	cd C18
	make -f Borland.makefile
	cd ..
	cd C19
	make -f Borland.makefile
	cd ..
	cd C20
	make -f Borland.makefile
	cd ..
	cd C21
	make -f Borland.makefile
	cd ..
	cd C22
	make -f Borland.makefile
	cd ..
	cd C23
	make -f Borland.makefile
	cd ..
	cd C24
	make -f Borland.makefile
	cd ..
	cd C25
	make -f Borland.makefile
	cd ..
	cd C26
	make -f Borland.makefile
	cd ..
	cd CXX
	make -f Borland.makefile
	cd ..

Microsoft:
	cd C02
	make -f Microsoft.makefile
	cd ..
	cd C03
	make -f Microsoft.makefile
	cd ..
	cd C04
	make -f Microsoft.makefile
	cd ..
	cd C05
	make -f Microsoft.makefile
	cd ..
	cd C06
	make -f Microsoft.makefile
	cd ..
	cd C07
	make -f Microsoft.makefile
	cd ..
	cd C08
	make -f Microsoft.makefile
	cd ..
	cd C09
	make -f Microsoft.makefile
	cd ..
	cd C10
	make -f Microsoft.makefile
	cd ..
	cd C11
	make -f Microsoft.makefile
	cd ..
	cd C12
	make -f Microsoft.makefile
	cd ..
	cd C13
	make -f Microsoft.makefile
	cd ..
	cd C14
	make -f Microsoft.makefile
	cd ..
	cd C15
	make -f Microsoft.makefile
	cd ..
	cd C16
	make -f Microsoft.makefile
	cd ..
	cd C17
	make -f Microsoft.makefile
	cd ..
	cd C18
	make -f Microsoft.makefile
	cd ..
	cd C19
	make -f Microsoft.makefile
	cd ..
	cd C20
	make -f Microsoft.makefile
	cd ..
	cd C21
	make -f Microsoft.makefile
	cd ..
	cd C22
	make -f Microsoft.makefile
	cd ..
	cd C23
	make -f Microsoft.makefile
	cd ..
	cd C24
	make -f Microsoft.makefile
	cd ..
	cd C25
	make -f Microsoft.makefile
	cd ..
	cd C26
	make -f Microsoft.makefile
	cd ..
	cd CXX
	make -f Microsoft.makefile
	cd ..

all:
	cd C02
	make -f all.makefile
	cd ..
	cd C03
	make -f all.makefile
	cd ..
	cd C04
	make -f all.makefile
	cd ..
	cd C05
	make -f all.makefile
	cd ..
	cd C06
	make -f all.makefile
	cd ..
	cd C07
	make -f all.makefile
	cd ..
	cd C08
	make -f all.makefile
	cd ..
	cd C09
	make -f all.makefile
	cd ..
	cd C10
	make -f all.makefile
	cd ..
	cd C11
	make -f all.makefile
	cd ..
	cd C12
	make -f all.makefile
	cd ..
	cd C13
	make -f all.makefile
	cd ..
	cd C14
	make -f all.makefile
	cd ..
	cd C15
	make -f all.makefile
	cd ..
	cd C16
	make -f all.makefile
	cd ..
	cd C17
	make -f all.makefile
	cd ..
	cd C18
	make -f all.makefile
	cd ..
	cd C19
	make -f all.makefile
	cd ..
	cd C20
	make -f all.makefile
	cd ..
	cd C21
	make -f all.makefile
	cd ..
	cd C22
	make -f all.makefile
	cd ..
	cd C23
	make -f all.makefile
	cd ..
	cd C24
	make -f all.makefile
	cd ..
	cd C25
	make -f all.makefile
	cd ..
	cd C26
	make -f all.makefile
	cd ..
	cd CXX
	make -f all.makefile
	cd ..

egcs:
	cd C02; make -f egcs.makefile
	cd C03; make -f egcs.makefile
	cd C04; make -f egcs.makefile
	cd C05; make -f egcs.makefile
	cd C06; make -f egcs.makefile
	cd C07; make -f egcs.makefile
	cd C08; make -f egcs.makefile
	cd C09; make -f egcs.makefile
	cd C10; make -f egcs.makefile
	cd C11; make -f egcs.makefile
	cd C12; make -f egcs.makefile
	cd C13; make -f egcs.makefile
	cd C14; make -f egcs.makefile
	cd C15; make -f egcs.makefile
	cd C16; make -f egcs.makefile
	cd C17; make -f egcs.makefile
	cd C18; make -f egcs.makefile
	cd C19; make -f egcs.makefile
	cd C20; make -f egcs.makefile
	cd C21; make -f egcs.makefile
	cd C22; make -f egcs.makefile
	cd C23; make -f egcs.makefile
	cd C24; make -f egcs.makefile
	cd C25; make -f egcs.makefile
	cd C26; make -f egcs.makefile
	cd CXX; make -f egcs.makefile

